package com.ym.medical.service;

import com.github.pagehelper.PageInfo;
import com.ym.core.utils.tkmybatis.IBaseSV;
import com.ym.medical.domain.entity.AddressListEntity;
import com.ym.medical.domain.vo.AddressListVo;
import com.ym.medical.domain.vo.DoctorLinkVo;

import java.util.List;

/**
 * ComputerName:LAPTOP-6GI4HOI6
 * Author:625
 * Date: 2019-05-22
 * Time: 14:14:51
 * 服务接口
 */
public interface IAddressListSV extends IBaseSV<AddressListEntity> {


    /**
     * 添加好友
     *
     * @param patientId  添加ID
     * @param currUserId 医生ID
     * @param idType     添加用户类型,01用户02医生03患者
     * @param groupId    分组ID
     */
    Long addFriend(Long patientId, Long currUserId, String idType, Long groupId);

    /**
     * 查询医生通讯录列表
     *
     * @param keywords
     * @param pageNum
     * @param pageSize
     * @return
     */
    PageInfo<DoctorLinkVo> listDoctor(String keywords, Long userId, int pageNum, int pageSize);

    /**
     * 取消关注
     * @param id
     * @return
     */
    int cancelAttention(Long id);

    /**
     * 所有与该医生有关系的人
     * @param doctorId
     * @return
     */
    List<AddressListVo> selectBeRelevant(Long doctorId);

    /**
     * 屏蔽患者
     * @param id
     * @param id1
     * @param idType
     * @param groupId
     * @return
     */
    int shieldFriend(Long id, Long id1, String idType, Long groupId,String type);
}
